PHLEGM v8 Checkpoint 38 - Dual CPU Self-Test Metadata Isolation

Observed from PHLEGM-Console-2026-1008-0156-4003.log:
PET-4016-N opened its display, then SuperPET failed startup self-test:
expected valid=151 illegal=12 undocumented=93 total=256 (MOS-6502),
found valid=268 illegal=498 undocumented=0 total=766 (MC6809).
The loader correctly compiled both sets; CpuCachePrepare compiled the
secondary 6502 last, then CpuImageActivate(0) restored the primary 6809
opcode tables without restoring gExpected* counts or gSelfTestFile.
Therefore startup qualification compared MC6809 opcodes to 6502 metadata
and withheld the SuperPET display despite valid .phlegm definitions.

Fix (source only, data-driven opcode tables and definitions unchanged):
src/lib/cpu-switch-types.bi: add per-CPU expected opcode counts,
addressing/semantic counts, and the CPU-specific selftest file name.
src/lib/cpu-switch.bi: capture and activate these fields with each
CPU execution image, so primary and secondary selftests use matching data.
No forced selftest bypass, opcode recategorization, or SuperPET-specific
hardcoding. Compiler/bootstrap scripts and .phlegm files are untouched.

Static validation: matching capture/activate fields, source syntax inspection,
CRLF/LF line endings, ZIP member CRC and SHA256 complete.
Native FreeBASIC compile and Windows runtime testing are NOT RUN in this
environment; SuperPET display opening remains to be verified by user.
After startup, original corrupted-character investigation remains open.
